home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Python 1.3.3 / stdwin / Tools / monocase.c < prev    next >
Text File  |  1995-12-21  |  451b  |  30 lines

  1. /* monocasecmp -- like strcmp but upper and lower case letters
  2.    are considered identical. */
  3.  
  4. #include <ctype.h>
  5.  
  6. #define EOS '\0'
  7.  
  8. int
  9. monocasecmp(a, b)
  10.     register char *a;
  11.     register char *b;
  12. {
  13.     for (;;) {
  14.         register char ca= *a++;
  15.         register char cb= *b++;
  16.         if (ca == cb) {
  17.             if (ca == EOS)
  18.                 return 0;
  19.         }
  20.         else {
  21.             if (islower(ca))
  22.                 ca= toupper(ca);
  23.             if (islower(cb))
  24.                 cb= toupper(cb);
  25.             if (ca != cb)
  26.                 return ca - cb;
  27.         }
  28.     }
  29. }
  30.